package com.newly.api.business.feign;

import com.newly.common.base.constants.ServerUriConstant;
import com.newly.common.base.entity.R;
import com.newly.common.base.entity.business.Dto.StatisticsDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;

import javax.servlet.http.HttpServletResponse;

/**
 * @anthor ljq
 * @date 2021/11/16 10:29
 */
@Api(tags = "统计分析api")
@FeignClient(path = ServerUriConstant.NEWLY_BUSINESS_Statistics, name = ServerUriConstant.NEWLY_BUSINESS_SERVICE_NAME)
public interface StatisticsClient {

    @ApiOperation("站点超限统计数据查询")
    @GetMapping("/getSiteData")
    R getSiteData(StatisticsDto statisticsDto);

    @ApiOperation("导出站点超重违法统计明细表")
    @GetMapping("/exportSiteData")
    void exportSiteData(StatisticsDto statisticsDto, HttpServletResponse response);

    @ApiOperation("各时间超限统计数据")
    @GetMapping("/getTimeData")
    R getTimeData( StatisticsDto statisticsDto);

    @ApiOperation("导出时间超重违法统计明细表")
    @GetMapping("/exportTimeData")
    void exportTimeData(StatisticsDto statisticsDto, HttpServletResponse response);

    @ApiOperation("各轴数超限统计数据")
    @GetMapping("/getAxleData")
    R getAxleData(StatisticsDto statisticsDto);

    @ApiOperation("导出轴数超重违法统计明细表")
    @GetMapping("/exportAxleData")
    void exportAxleData(StatisticsDto statisticsDto, HttpServletResponse response);

    @ApiOperation("各区域数超限统计数据")
    @GetMapping("/getAreaData")
    R getAreaData(StatisticsDto statisticsDto);

    @ApiOperation("导出区域超重违法统计明细表")
    @GetMapping("/exportAreaData")
    void exportAreaData(StatisticsDto statisticsDto, HttpServletResponse response);

}
